
package educar.abmAsignacionDoc;
/** 
 * AgregarAsignacionController.java
 * @import educar.models.*;
 * @import java.awt.event.ActionEvent;
 * @import java.awt.event.ActionListener;
 * @import javax.swing.JOptionPane;
 * Created on 05-may-2012, 10:47:29
 */


import educar.models.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;

/**
 *  Se Encarga de Agregar a una asignacion de docente en una facultad          
 *  Mediante el dni del docente y el codigo de una materia.
 * @version 1.1
 * @autor Natalia Patricia Lagable. mail:patolagable@gmail.com
 * 
 */


public class AgregarAsignacionController implements ActionListener {    
    private AgregarAsignacionView agregarAsignacionView;
    private String vector[] = new String[2];
    private AsignacionController asignacionControl;
    
// <editor-fold defaultstate="collapsed" desc="Constructor Constructor AgregarAsignacionController(asig)">
    public AgregarAsignacionController(AsignacionController asignacionControler){        
        asignacionControl = asignacionControler;
        agregarAsignacionView = new AgregarAsignacionView();
        agregarAsignacionView.setActionListener(this);
    }
 // </editor-fold>

// <editor-fold defaultstate="collapsed" desc="setView agregarAsignacionView">    
    public void setView() {
        agregarAsignacionView.setVisible(true);
    }
// </editor-fold>  

// <editor-fold defaultstate="collapsed" desc="Metodos ActionPermormed">    
    @Override
    public void actionPerformed(ActionEvent e) {
        Object source = e.getSource();
        if (agregarAsignacionView.getJbCancelar() == source){
            agregarAsignacionView.dispose();
        }
        if (agregarAsignacionView.getJbAgregar() == source){
            vector[0] = agregarAsignacionView.getdnidocente();
            vector[1] = agregarAsignacionView.getCodMateria();
           ;
            if (!((vector[0].length() == 0) || (vector[1].length() == 0)) ) {
                if ((Docente.exist(vector[0])) && (Materia.exist(vector[1]))) {
                    Asignacion asignacion = new Asignacion(vector[0], vector[1]);
                    if (asignacion.save()) {                           
                        asignacionControl.agregarATabla(vector);
                        agregarAsignacionView.dispose();
                    } else {
                        JOptionPane.showMessageDialog(null,"Ya existe el dni del docente "+ vector[0]+" , el codigo de la materia" + vector[1]+ ".","EDU FIVE 2012",JOptionPane.WARNING_MESSAGE);
                    }   
                } else{
                    JOptionPane.showMessageDialog(null,"Alguno de los campos no existe","EDU -FIVE",JOptionPane.WARNING_MESSAGE);
                }
            } else {
                JOptionPane.showMessageDialog(null,"Existe al menos un campo sin completar.\n\nRevise los campos ingresados","proyecto 2012",JOptionPane.WARNING_MESSAGE);
            }
        }
    }    
// </editor-fold>

    
    
    
}
